package com.ruoyi.system.service.impl;

import java.util.List;

import com.ruoyi.system.domain.SysTradingrecord;
import com.ruoyi.system.mapper.SysTradingrecordMapper;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.stereotype.Service;
import com.ruoyi.system.mapper.TbIncomeMapper;
import com.ruoyi.system.domain.TbIncome;
import com.ruoyi.system.service.ITbIncomeService;

import javax.annotation.Resource;

/**
 * 【请填写功能名称】Service业务层处理
 * 
 * @author ruoyi
 * @date 2022-03-19
 */
@Service
public class TbIncomeServiceImpl implements ITbIncomeService 
{
    @Autowired
    private TbIncomeMapper tbIncomeMapper;

    @Resource
    private SysTradingrecordMapper sysTradingrecordMapper;

    /**
     * 查询【请填写功能名称】
     * 
     * @param incomeId 【请填写功能名称】主键
     * @return 【请填写功能名称】
     */
    @Override
    public TbIncome selectTbIncomeByIncomeId(Long incomeId)
    {
        return tbIncomeMapper.selectTbIncomeByIncomeId(incomeId);
    }

    /**
     * 查询【请填写功能名称】列表
     * 
     * @param tbIncome 【请填写功能名称】
     * @return 【请填写功能名称】
     */
    @Override
    public List<TbIncome> selectTbIncomeList(TbIncome tbIncome)
    {
        return tbIncomeMapper.selectTbIncomeList(tbIncome);
    }

    /**
     * 新增
     * 
     * @param tbIncome
     * @return 结果
     */
    @Override
    public int insertTbIncome(TbIncome tbIncome)
    {
        int income=tbIncomeMapper.insertTbIncome(tbIncome);
        SysTradingrecord sysTradingrecord=new SysTradingrecord();
        sysTradingrecord.setCreatetime(tbIncome.getIncomeDate());
        sysTradingrecord.setDitType("收入");
        sysTradingrecord.setDitId(tbIncome.getIncomeId());
        int tradingrecord=sysTradingrecordMapper.insertSysTradingrecord(sysTradingrecord);
        return tradingrecord;
    }

    /**
     * 修改【请填写功能名称】
     * 
     * @param tbIncome 【请填写功能名称】
     * @return 结果
     */
    @Override
    public int updateTbIncome(TbIncome tbIncome)
    {
        return tbIncomeMapper.updateTbIncome(tbIncome);
    }

    /**
     * 批量删除【请填写功能名称】
     * 
     * @param incomeIds 需要删除的【请填写功能名称】主键
     * @return 结果
     */
    @Override
    public int deleteTbIncomeByIncomeIds(Long[] incomeIds)
    {
        return tbIncomeMapper.deleteTbIncomeByIncomeIds(incomeIds);
    }

    /**
     * 删除【请填写功能名称】信息
     * 
     * @param incomeId 【请填写功能名称】主键
     * @return 结果
     */
    @Override
    public int deleteTbIncomeByIncomeId(Long incomeId)
    {
        return tbIncomeMapper.deleteTbIncomeByIncomeId(incomeId);
    }
}
